<?php

/**
 * Description of Resultset
 *
 * @author prometheus
 */
class XQL_Resultset extends x10_GeneralClass
{
	/**
	 * Az adathalmazban található rekordok.
	 * @var Array
	 */
    protected $data = array();

	/**
	 * @var XQL_DataSource_RecordManager
	 */
	protected $records;

	public function __construct(x10_Config $config=NULL)
	{
		parent::__construct($config);

		$records = $this->config->getConfigKey('records');
		if (isset($records))
		{
			$this->setup($records);
		}
	}

	/**
	 * Beállítja az adathalmaz adatait az osztálynak megfelelő módon.
	 * @param XQL_DataSource_RecordManager $records
	 * @return XQL_Resultset
	 */
	public function setup(XQL_DataSource_RecordManager $records)
	{
		$this->data = array();
		$this->records = $records;
		foreach ($records as $rec)
		{
			if (!$rec->isDeleted()) $this->data[] = $rec->export();
		}
		return $this;
	}

	/**
	 * Visszaadja az eredmnyhalmazt az osztály céljának megfelelően.
	 * @return Array
	 */
	public function get()
	{
		return $this->data;
	}

	/**
	 * Az eredményhalmaz String reprezentációját határozza meg.
	 * @return String
	 */
	public function __toString()
	{
		return print_r($this->data, TRUE);
	}
}
?>
